Hybris Sales UX API
TMF-700 Create Shipping Order Quote
This use case is to creates shipping order quote.
URL
https://[localhost]:[port]/ecom-sales-ux/v1/{businessId}/shippingOrder
url Param
name | type | description | required |
---|---|---|---|
businessId | string | 2 letter ISO 3166 country code (TT, BB, JM, PA, etc.) identifying the business unit. | Y |
Header
name | type | description | required |
---|---|---|---|
client_id | string | The client_id identifying the channel. Minimum characters: 5 | Y |
client_secret | string | Password associated with the client_id. Minimum characters: 5 | Y |
X-Correlation-ID | string | Identifier that correlates HTTP request between a client and server. Any identification model (UUDI, checksum, etc.) can be used, as long as it is a unique value to differentiate a transaction. | N |
cURL request
curl --location 'https://[localhost]:[port]/ecom-sales-ux/v1/{businessId}/shippingOrder' \
--header 'client_id: 12344' \
--header 'client_secret: 11111' \
--header 'Content-Type: application/json' \
--data '{
"placeTo": {
"name": "901 Market Street 6th Floor San Francisco, CA 94103", //dropoff_address //Digital
"role": "Recepient"
},
"placeFrom": {
"name": "901 Market Street 6th Floor San Francisco, CA 94103", //pickup_address
"geographicSubAddress": [
{
"id": "myBusiness123", //pickup_external_business_id //Digital
"name": "store-456" //pickup_external_store_id //Digital
}
],
"role": "PickupStore"
},
"relatedParty": [
{
"name": "John Doe", //dropoff_contact_given_name + dropoff_contact_family_name
"role": "Recepient", //indicates dropoff information
"@referredType": "Individual",
"contactMedium": [
{
"mediumType": "Phone",
"preferred": true,
"characteristic": {
"phoneNumber": "+16505555555" //dropoff_phone_number //Digital
}
}
]
},
{
"name": "Liberty Store", //pickup_business_name
"role": "PickupStore", //indicates pickup information
"@referredType": "Organization",
"contactMedium": [
{
"mediumType": "Phone",
"preferred": true,
"characteristic": {
"phoneNumber": "+16505555555" //pickup_phone_number //Digital
}
}
]
}
],
"shippingOrderCharacteristic": [
{
"name": "shipping_partner", //to indicate integration with DoorDash
"value": "doordash"
},
{
"name": "order_fulfillment_method",
"value": "standard" //order_fulfillment_method //Digital
},
{
"name": "locale",
"value": "en-US" //locale //Digital
}
],
"shippingOrderItem": [
{
"id": "D-134556", //external_delivery_id //Digital
"action": "add",
"shipment": {
"collectionDate": "2025-07-09T07:00:00.000-04:00" //pickup_time //Digital
}
}
]
}'
Definitions
Each of the request parameters is detailed.
Name | Type | Description | Required |
---|---|---|---|
placeTo | Object | Object describes drop off address | Y |
placeTo.name | String | Comma-separated full address of the destination | Y |
placeFrom | Object | Object describes drop off address | Y |
placeFrom.name | String | Comma-separated full address of the pickup location | Y |
placeFrom.geographicSubAddress.id | String | Pickup Business id | Y |
placeFrom.geographicSubAddress.name | String | Pickup Store id | N |
relatedParty[].name | String | Party name (Business Name/Dropoff Name ) | Y |
relatedParty[].role | String | Party role (Recipient , PickupStore ) | Y |
relatedParty[].@referredType | String | Type of party (Individual , Organization ) | Y |
relatedParty[].contactMedium[].mediumType | String | Contact type (e.g., Phone ) | N |
relatedParty[].contactMedium[].preferred | Boolean | Whether it is the preferred contact method | N |
relatedParty[].contactMedium[].characteristic.phoneNumber | String | Contact phone number Mandatory for dropoff | Y* |
shippingOrderCharacteristic[].name | String | Name of metadata (e.g., shipping_partner , order_fulfillment_method , locale are Required) | Y* |
shippingOrderCharacteristic[].value | Mixed | Value of the metadata | N |
shippingOrderCharacteristic[].valueType | String | Optional: describes the type (e.g., object , string ) | N |
shippingOrderItem[].id | String | External delivery ID | Y |
shippingOrderItem[].action | String | Order action (add , modify , etc.) | N |
shippingOrderItem[].shipment.collectionDate | DateTime | Pickup time | Y |
Response
{
"id": "D-1763", //external_delivery_id
"shippingOrderCharacteristic": [
{
"name": "tracking_url",
"value": "https://doordash.com/tracking?id=1345"
}
],
"shippingOrderPrice": {
"priceType": "deliveryQuote",
"price": {
"taxIncludedAmount": {
"value": 19.99, //fee
"unit": "USD"
},
"dutyFreeAmount": {
"value": 19.00,
"unit": "USD"
},
"taxAmount": {
"value": 0.99,
"unit": "USD"
}
}
},
"relatedParty": [
{
"id": "1232142",
"name": "John D.",
"role": "DeliveryAgent",
"@referredType": "Individual"
}
],
"shippingOrderItem": [
{
"id": "D-1763", //external_delivery_id
"action": "add",
"shipment": {
"collectionDate": "2025-07-09T07:00:00.000-04:00",
"pickupDate": "2025-07-09T07:00:00.000-04:00", //pickup_time_estimated
"expectedDeliveryDate": "2025-07-09T07:00:00.000-04:00" //dropoff_time_estimated
}
}
],
"status": "quoted" //delivery_status
}
Definitions
Each of the response parameters is detailed.
Name | Type | Description | required |
---|---|---|---|
id | string | External Delivery id | N |
shippingOrderCharacteristic[name = "tracking_url"].value | string | Tracking url | N |
shippingOrderPrice.priceType | string | Type of price (deliveryQuote ) | N |
shippingOrderPrice.price.taxIncludedAmount.value | number | Order Value | N |
shippingOrderPrice.price.dutyFreeAmount.value | number | Delivery Fee | N |
shippingOrderPrice.price.taxAmount.value | number | Tax amount | N |
relatedParty.id | string | Dasher Id | N |
relatedParty.name | string | Dasher Name | N |
relatedParty.role | string | Related Party Role. i.e DeliveryAgent | N |
relatedParty.@referredType | string | Reffered type of related party. i.e Individual | N |
shippingOrderItem.id | string | External Delivery id | N |
shippingOrderItem.action | string | Action performed. "add" in this case | N |
shippingOrderItem.shipment.collectionDate | datetime | Actual Pickup time | N |
shippingOrderItem.shipment.pickupDate | datetime | Estimated pickup time | N |
shippingOrderItem.shipment.expectedDeliveryDate | datetime | Estimated dropoff time | N |
status | string | Delivery Status | N |
####